package com.boot.service;

import com.boot.domain.*;
import org.apache.ibatis.annotations.Param;

import java.util.List;
import java.util.Map;

/**
 * @author wwj
 */
public interface OrgService {
	/**
	 * 根据用户ID查询用户
	 * @param id
	 * @return
	 */
	Organization selectOrgById(Integer id);

	/**
	 * 根据name查询机构基础数据
	 * @param basicDataName
	 * @return
	 */
	public List<Entity> getBasicData(String[] basicDataName);

	/**
	 * 根据类型查询机构
	 * @param orgType
	 * @return
	 */
	public List<InspectionByType> getInspectionByType(int orgType);

	public List<LaboratoryByType> getLaboratoryByType(int orgType);

	public List<ScientificByType> getScientificByType(int orgType);

	public List<OrganizationByDistribution> getOrganizationByDistribution();

	public List<RankingByDistribution> getNewCancelSumByDistribution();

	public List<ProportionByDistribution> getNewCancelSumProportion();

	public List<OrganiseByDistribution> getOrgOrganiseSum(String county);

	public List<OrganiseByDistribution> getOrgChildOrganiseSum(String county,String parentId);

	public List<OrganiseByDistribution> getNewOrgOrganiseSum(String county);

	public List<OrganiseByDistribution> getNewOrgChildOrganiseSum(String county,String parentId);

	public List<OrganiseByDistribution> getCancelOrgOrganiseSum(String county);

	public List<OrganiseByDistribution> getCancelOrgChildOrganiseSum(String county,String parentId);

	public List<OrganiseByDistribution> getTestOrgOrganiseSum(String county);

	public List<OrganiseByDistribution> getTestOrgChildOrganiseSum(String county,String parentId);

	public List<Organization> getOrgListByZoneCode(String county);

	public List<TurnoverByIndeustry> getOrgTurnoverByIndeustry(String county);

	public List<OrgTradeSum> getOrgTradeSumByZoneCode(String county);

	public List<OrgGDPSum> getOrgGDPSumByZoneCode(String county);

	public Map getNewOrgOrganiseByZoneCode(String conuty,String organiseCode);

	public List<OrgCompetitive> getOrgCompetitiveByOrgCode(String orgCode);

	public List<OrgEachCompetitive> getOrgEachCompetitiveByOrgCode(String orgCode);

	public String getAnalysisReportByOrgCode(String orgCode);

	public String getAnalysisReportByIndustryCode(String industryCode);

	public List<Zone> getAllZone();

	public List<Industry> getAllIndustry();

	public List<Organization> getOrgByZoneAndIndustry(String zoneCode,String industryCode);

	public List<Organization> getOrgListByOrganiseZoneCode(String county, String code);

	public List<OrgTest> getOrgTestListByOrganiseZoneCode(String county,String code);

	public List<SalesVolume> getSalesVolumeByOrgCode(String orgCode);

	public List<SalesVolume> getSalesVolumeByIndustryCode(String county,String industryCode);

	public List<SalesTurnover> getSalesTurnoverByOrgCode(String orgCode);

	public List<SalesTurnover> getSalesTurnoverByIndustryCode(String county,String industryCode);

	public List<QualityCredit> getQualityCreditByOrgCode(String orgCode);

	public List<QualityCredit> getQualityCreditByIndustryCode(String county,String industryCode);

	public Map getProductionLicenseByOrgCode(String orgCode);

	public Map getProductionLicenseByIndustryCode(String county,String industryCode);

	public List<Proportion> getProportionByOrgCode(String orgCode);

	public List<Proportion> getProportionByIndustryCode(String county,String industryCode);

	public Map getConsumeByOrgCode(String orgCode);

	public Map getConsumeByIndustryCode(String county,String industryCode);

	public List<Profile> getProfile();
}
